@use 'icons';
@use 'tooltips';
@use 'widgets';
@use 'dialog';

@use 'native/index';
@use 'structure/index' as index2;

@use 'chat';

@keyframes ffz-rotateplane {
	0% { transform: rotateY(90deg) rotateX(180deg) }
	25% { transform: rotateY(0deg) rotateX(180deg) }
	75% { transform: rotateY(0deg) rotateX(0deg) }
	100% { transform: rotateY(90deg) rotateX(0deg) }
}

@keyframes ffz-gentle-shake {
	0% { transform: translate(20px) }
	20% { transform: translate(-20px) }
	40% { transform: translate(10px) }
	60% { transform: translate(-10px) }
	80% { transform: translate(5px) }
	100% { transform: translate(0) }
}

@keyframes ffz--fade {
	0% { opacity: 1 }
	50% { opacity: 0.5 }
	100% { opacity: 1 }
}

@keyframes ffz-rotate {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

:root {
	--ffz-font-size-1: calc(var(--font-size-base) * 3.8571428571);
	--ffz-font-size-2: calc(var(--font-size-base) * 2.5714285714);
	--ffz-font-size-3: calc(var(--font-size-base) * 1.7142857143);
	--ffz-font-size-4: calc(var(--font-size-base) * 1.2857142857);
	--ffz-font-size-5: var(--font-size-base);
	--ffz-font-size-6: calc(var(--font-size-base) * 0.9285714286);
	--ffz-font-size-7: calc(var(--font-size-base) * 0.8571428571);
}

.ffz-font-size-1 { font-size: var(--ffz-font-size-1); }
.ffz-font-size-2 { font-size: var(--ffz-font-size-2); }
.ffz-font-size-3 { font-size: var(--ffz-font-size-3); }
.ffz-font-size-4 { font-size: var(--ffz-font-size-4); }
.ffz-font-size-5 { font-size: var(--ffz-font-size-5); }
.ffz-font-size-6 { font-size: var(--ffz-font-size-6); }
.ffz-font-size-7 { font-size: var(--ffz-font-size-7); }

.ffz--inline {
	display: inline;
}

.ffz__tooltip .ffz-c-text-youtube,
.tw-root--theme-dark .ffz-c-text-youtube {
	color: #fff !important;
}
.tw-root--theme-dark .ffz__tooltip .ffz-c-text-youtube,
.ffz-c-text-youtube {
	color: #212121 !important;
}

.ffz--player-meta-tray {
	position: absolute;
	bottom: 100%;
	margin-bottom: 0.5rem;

	display: inline-flex;
	color: var(--color-text-overlay);

	.ffz-stat {
		background-color: var(--color-background-pill);
		color: var(--color-text-overlay);
		display: inline-block;
		position: relative;
		line-height: 1;
		text-align: center;
		white-space: nowrap;
		border-radius: 1000px;
		padding: 0.3rem 0.5rem;
		font-size: 75%;
	}

	.ffz-stat-text {
		font-family: "Helvetica Neue",sans-serif;
		font-variant-numeric: tabular-nums;
	}
}


.ffz-new-indicator {
	position: absolute;
	top: 0;
	right: 0;

	width: 0.8rem;
	height: 0.8rem;

	background-color: var(--color-fill-new-item-indicator);
	border-radius: var(--border-radius-rounded);
}

.emote-picker-tab-item .ffz-new-indicator {
	top: 0.25rem;
	right: 0.25rem;
}

.ffz--rotate {
	animation: ffz-rotate 2s infinite linear;
}

.ffz--shaking {
	animation: ffz-gentle-shake 0.4s 1 linear;
}

@media (prefers-reduced-motion: reduce) {
    .ffz--shaking {
        animation: fade 0.4s 1 linear;
    }
}

.ffz-i-t-reset.loading,
.ffz-i-t-reset-clicked.loading,
.ffz-i-zreknarf.loading {
	animation: ffz-rotateplane 1.2s infinite linear;
}

.ffz-c-text-inherit {
	color: inherit !important;
}

.ffz-mg-r--05 {
	margin-right: -0.5rem !important;
}

.ffz-mg-t-1p {
	margin-top: 1px !important;
}

.ffz-mg-l--05 {
	margin-left: -0.5rem !important;
}

.ffz--links {
	order: 10;
}

.ffz-aspect {
	position: relative;
	width: 100%;
	overflow: hidden;

	> :not(.ffz-aspect__spacer) {
		position: absolute;
		left: 0;
		min-height: 100%;
		width: 100%;
	}
}

.ffz-aspect--overflow {
	overflow: visible
}

.ffz-aspect--align-top > :not(.ffz-aspect__spacer) {
	top: 0;
}

.ffz-aspect--align-center > :not(.ffz-aspect__spacer) {
	top: 50%;
	transform: translateY(-50%);
}

.ffz-aspect--align-bottom > :not(.ffz-aspect__spacer) {
	bottom: 0;
}

.ffz-scrollable {
	scrollbar-width: thin;
}
